﻿
namespace PhoneNetTools.Dns
{
    /// <summary>
    /// The possible types, as defined in RFC 1035.
    /// </summary>
    public enum QType : ushort
    {
        /// <summary>
        /// An unknown type. This value should never be used.
        /// </summary>
        Unknown = 0,
        /// <summary>
        /// A host address (IPv4).
        /// </summary>
        A = 1,
        /// <summary>
        /// An authoritative name server.
        /// </summary>
        NS,
        /// <summary>
        /// Mail destination, obsolete, use MX.
        /// </summary>
        MD,
        /// <summary>
        /// Mail forwarder, obsolete, use MX.
        /// </summary>
        MF,
        /// <summary>
        /// The canonical name for an alias.
        /// </summary>
        CNAME,
        /// <summary>
        /// Marks the start of a zone of authority.
        /// </summary>
        SOA,
        /// <summary>
        /// A mailbox domain name (experimental).
        /// </summary>
        MB,
        /// <summary>
        /// A mail group member (experimental).
        /// </summary>
        MG,
        /// <summary>
        /// A mail rename domain name (experimental).
        /// </summary>
        MR,
        /// <summary>
        /// A null resource record (experimental).
        /// </summary>
        NULL,
        /// <summary>
        /// A well known service description.
        /// </summary>
        WKS,
        /// <summary>
        /// A domain name pointer.
        /// </summary>
        PTR,
        /// <summary>
        /// Host information.
        /// </summary>
        HINFO,
        /// <summary>
        /// Mailbox or mail list information.
        /// </summary>
        MINFO,
        /// <summary>
        /// Mail exchange.
        /// </summary>
        MX,
        /// <summary>
        /// Text strings.
        /// </summary>
        TXT,
        /// <summary>
        /// A request for transfer of an entire zone.
        /// </summary>
        AFXR = 252,
        /// <summary>
        /// A request for mailbox-related records (MB, MG or MR).
        /// </summary>
        MAILB = 253,
        /// <summary>
        /// A request for mail agent RRs (Obsolete - see MX).
        /// </summary>
        MAILA = 254,
        /// <summary>
        /// A request for all records (*).
        /// </summary>
        ALL = 255
    }
}
